package com.chis.jmdatatimer.timerGpDto.dto;

import com.chis.jm.bean.qczs.data.CntStmCode;
import com.chis.jm.bean.qczs.data.Trace;
import com.chis.jmdatatimer.comm.TdJxcGpsdata;
import com.chis.jxc.bean.BactBean;
import com.chis.jxc.bean.BactStmBean;
import com.chis.jxc.bean.CntCode;
import com.chis.jxc.bean.CodeBean;
import com.chis.jxc.bean.ElecCodeBean;
import com.chis.jxc.bean.ElecInfo;
import com.chis.jxc.bean.IsoBean;
import com.chis.jxc.bean.TraceCode;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 *
 * @Description
 * @Company zwx
 * @author wlj
 * @version 2018年04月09日
 */
public interface TimerGpDTO {
    List<String> findCode(@Param("guid") String guid);

    List<Map<String, Object>> excutesql(@Param("sql") String sql);

    List<CodeBean> findRk(@Param("guids") String guids);
    List<CodeBean> findCk(@Param("guids") String guids);
    List<CodeBean> findFh(@Param("guids") String guids);


    List<ElecInfo> findmcode(@Param("elecCode") String elecCode);
    List<ElecInfo> findbcode(@Param("elecCode") String elecCode);
    TraceCode findtracecode(@Param("elecCode") String elecCode);

    void savePursubCode(CodeBean codeBean);
    void saveCntCode(CntCode cntCode);
    void updateCntCode(TraceCode traceCode);

    public String testHbase1() throws Exception;
    public List<CntStmCode> findCntstmCodeByElecCode() throws Exception;

    public List<IsoBean> findIsoStm();

    public List<ElecCodeBean> findElecBalance(@Param("guids") String guids);

    public List<String> findElecCode(@Param("guids") String guids);

    public void deleteElecCode(@Param("guids") String guids);

    public List<BactStmBean> findHbaseKc(@Param("guids") String guids) throws Exception;

    public List<BactStmBean> findHbaseKc1() throws Exception;

    void updateHbaseStm(@Param("guid") String guid, @Param("cnt") Integer cnt) throws Exception;

    public List<BactBean> findbact(@Param("l1") Long l1, @Param("l2") Long l2) throws Exception;
    public void deltracebact(@Param("s1") Long s1, @Param("s2") String s2, @Param("s3") String s3) throws Exception;

    public List<Trace> canbmtb1(@Param("mainCode") String mainCode) throws Exception;
    public List<Trace> canbmtb2(@Param("mainCode") String mainCode) throws Exception;

    /**
     * 查询最大更新时间
     * @return 最大更新时间
     * @throws Exception 异常
     */
    public List<TdJxcGpsdata> findChildYzMax(@Param("gpssn") String gpssn, @Param("starttime") String starttime, @Param("endtime") String endtime) throws Exception;

    public Map<String, Object> findChildYzField() throws Exception;

    public Map<String, Object> findChildyz(String childCode) throws Exception;

}
